package com.bblocks.enums;

import lombok.Getter;

/**
 * @description: 消息队列枚举配置
 * @author: Jin
 * @time: 2020/7/13 下午4:11
 */
@Getter
public enum QueueBaseEnum {

    /**
     * 支付结果广播(一个或0个)
     */
	QUEUE_PAY_RESULT("yuezhu.payresult.topic", "topic.yuezhu.pay.result", "topic.yuezhu.pay.result.*"),

	/**
	 * 通用订单取消了的广播(一个或0个)
	 */
	QUEUE_COMMORDER_CANCEL("yuezhu.orderCancel.topic", "topic.yuezhu.commorder.cancel", "topic.yuezhu.commorder.cancel.*"),


	/**
	 * 用户资源数据变更了
	 */
	USER_DATACHANGED("yuezhu.user.exchange", "yuezhu.user.sumdatachanged.queue", "yuezhu.user.sumdatachanged.queue"),

	/**
	 * 用户companyUser变更
	 */
	USER_ROLECHANGED("yuezhu.user.exchange", "yuezhu.user.rolechanged.queue", "yuezhu.user.rolechanged.queue"),


	/**
	 * 需求状态变更变更
	 */
	NEEDS_STATUSCHANGED("yuezhu.exchange", "yuezhu.needs.statuschanged.queue", "yuezhu.needs.statuschanged.queue"),

	/**
	 * 用户（tz）商品变更
	 */
	USER_GOODS_CHANGED("yuezhu.exchange", "yuezhu.user.goods.queue", "yuezhu.user.goods.queue"),
    ;
    /**
     * 交换名称
     */
    private String exchange;
    /**
     * 队列名称
     */
    private String name;
    /**
     * 路由键
     */
    private String routeKey;

    QueueBaseEnum(String exchange, String name, String routeKey) {
        this.exchange = exchange;
        this.name = name;
        this.routeKey = routeKey;
    }
}
